import { HTTP } from '../utils/request';
const http = new HTTP();
import global from '../config/index';

// 查询商品特殊分类信息
export function getgoodsSpecialClassification(){
  return http.request({
    url: '/app/query/goods/special/classification/info',
    method: 'post',
    data: {
      'brandId': global.brandId,
    }
  });
}

// 查询商品分类信息
export function getGoodsClassification({cateName = '',parentId = '0',page = 0,size = 10,level = '',id = ''}){
  return http.request({
    url:'/app/query/goods/classification/info',
    method: 'post',
    data: {
      'brandId': global.brandId,
      'cateName': cateName, // 分类名称（支持模糊查询）
      'parentId': parentId, // 上级分类ID，查询第一层的数据需要传0
      'page':page,
      'size':size,
      'level':level, // 层级
      'sort': 'sort',
      'id': id,
    }
  });
}

// 查询商品颜色分类信息
export function getGoodsColorInfo({id,name,page = 0, size = 10}){
  return http.request({
    url: '/app/query/goods/color/info',
    data: {
      'id': id,
      'brandId': global.brandId,
      'name': name,
      'page': page,
      'size': size,
    }
  })
}

// 查询商品信息
export function getGoodsInfo({goodsName = '',type = '0',cateId = '',page =0,size = 10,id='',minPrice='',maxPrice='',makeId='',isRecommend='',isNeedUserId = 1,specialCateId='',colorId = '',isCollect = '',sort,order = 'ASC'}){
  return http.request({
    url:'/app/query/goods/info',
    method: 'post',
    data: {
      'id':id,
      'brandId': global.brandId,
      'goodsName': goodsName, // 商品名称（支持模糊查询）
      'type': type, // 商品类型（0：普通商城专区，1：拼团专区，2：新人专享专区）
      'cateId': cateId, // 分类ID，（多个用逗号隔开）
      'page': page,
      'size': size,
      'minPrice': minPrice, // 最低价
      'maxPrice': maxPrice, // 最高价
      'makeId': makeId, // 品牌ID
      'isRecommend': isRecommend, // 是否推荐，0：否，1：是
      'isNeedUserId': isNeedUserId, // 是否需要登录
      'specialCateId': specialCateId, // 特殊分类ID
      'colorId': colorId, // 颜色ID
      'isCollect': isCollect, // 是否收藏，0：否，1：是
      'sort': sort, // 排序字段，price：价格，salesVolume：销量
      'order': order, // 排序，DESC 和 ASC
    }
  });
}

// 收藏商品
export function goodsCollection({id = '',isDelete = '',storehouseId,areaId,goodsId}){
  return http.request({
    url:'/app/update/goods/collection',
    method: 'post',
    data: {
      'id':id,
      'isDelete': isDelete, // 是否删除
      'storehouseId': storehouseId, // 仓库ID
      'areaId': areaId, // 分区ID
      'goodsId': goodsId, // 商品ID
    }
  });
}

// 查询收藏商品
export function getGoodsCollection({storehouseId,areaId,goodsId,goodsName,page}){
  return http.request({
    url:'/app/query/goods/collection',
    method: 'post',
    data: {
      'storehouseId': storehouseId, // 仓库ID
      'areaId': areaId, // 分区ID
      'goodsId': goodsId, // 商品ID
      'goodsName': goodsName, // 商品名称
      'page': page,
      'size': 10,
    }
  });
}

// 获取商品图片
export function getGoodsPicture(goodsId,type){
  return http.request({
    url:'/app/query/goods/picture',
    data: {
      'brandId': global.brandId,
      'goodsId': goodsId, // 商品id
      'type': type, // 类型，0：详情图。1：轮播图，2：拼拼有礼轮播图
  }});
}

// 获取商品规格信息
export function getGoodsSpecInfo({goodsId,id = ''}){
  return http.request({
    url:'/app/query/goods/spec/info',
    data: {
      'goodsId': goodsId, // 商品id
      'id': id, // 规格id
  }});
}

// 获取购物车商品
export function getShoppingCartGoods(){
  return http.request({
    url:'/app/query/goods/shopping/cart',
    data: {
  }});
}

// 增删改购物车商品信息
export function updateShoppingCartGoods({goodsDetailsId = '',quantity = 1,isSelect = '',id = '',isDelete = ''}){
  return http.request({
    url:'/app/update/goods/shopping/cart',
    data: {
    'brandId': global.brandId,
    'goodsListsId':goodsDetailsId, // 商品详情ID
    'quantity': quantity, // 商品数量
    'isSelect': isSelect, // 是否选中，0：否，1：是
    'id': id,
    'isDelete': isDelete, // 是否删除，0：否，1：是
  }});
}

// 查询商品优惠券信息
export function getGoodsCouponInfo({id,name,type,status,startTime,endTime,page,size = 10}){
  return http.request({
    url: '/app/query/goods/coupon/info',
    data: {
      'id': id,
      'name': name, // 优惠券名称
      'type': type, // 类型，0：注册，1：平台福利
      'status': status, // 状态，0：未使用，1：已使用，2：已过期
      'startTime': startTime, // 开始时间
      'endTime': endTime, // 结束时间
      'page': page,
      'size': size,
    }
  })
}

// 查询商品分区信息
export function queryGoodsArea({page,size = 10,id,name}){
  return http.request({
    url: '/app/query/goods/area',
    data: {
      'brandId': global.brandId,
      'page': page,
      'size': size,
      'id': id,
      'name': name,
    }
  })
}

// 查询商品城市配置
export function queryGoodsCityConfig({province,city,area,storehouseId,deliveryType,delivererName,delivererPhone,page,size = 10}){
  return http.request({
    url: '/app/query/goods/city/config',
    data: {
      'brandId': global.brandId,
      'province': province,
      'city': city,
      'area': area, // 区域
      'storehouseId': storehouseId, // 仓库ID
      'deliveryType': deliveryType, // 配送方式，0：极速送达，1：快递
      'delivererName': delivererName, // 配送员姓名
      'delivererPhone': delivererPhone, // 配送员手机号
      'page': page,
      'size': size,
    }
  })
}

// 查询商品列表数据
export function queryGoodsDetailsTabulation({storehouseId,areaId,goodsId,goodsName,cateId,colorId,grade,spec,sellingPriceSort,salesVolumeSort,isNeedUserId = '1',isCollect,page = 0,size = 10}){
  return http.request({
    url: '/app/query/goods/details/tabulation',
    data: {
      'storehouseId': storehouseId, // 仓库ID
      'areaId': areaId, // 分区ID
      'goodsId': goodsId, // 商品ID
      'goodsName': goodsName, // 商品名称
      'cateId': cateId, // 分类ID
      'colorId': colorId, // 颜色ID
      'grade': grade, // 等级
      'spec': spec, // 规格
      'sellingPriceSort': sellingPriceSort, // 售价排序（ASC:正序，DESC：倒序）
      'salesVolumeSort': salesVolumeSort, // 销量排序（ASC:正序，DESC：倒序）
      'isNeedUserId': isNeedUserId, // 是否需要用户ID（0：否，1：是）
      'isCollect': isCollect, // 是否查询收藏（0：否，1：是）
      'page': page,
      'size': size,
    }
  })
}

// 查询商品明细信息
export function queryGoodsDetails({storehouseId,areaId,goodsId,goodsName,cateId,colorId,grade,spec,isNeedUserId = '1',isCollect,page,size}){
  return http.request({
    url: '/app/query/goods/details',
    data: {
      'storehouseId': storehouseId, // 仓库ID
      'areaId': areaId, // 分区ID
      'goodsId': goodsId, // 商品ID
      'goodsName': goodsName, // 商品名称
      'cateId': cateId, // 分类ID
      'colorId': colorId, // 颜色ID
      'grade': grade, // 等级
      'spec': spec, // 规格
      'isNeedUserId': isNeedUserId, // 是否需要用户ID
      'isCollect': isCollect, // 是否收藏
      'page': page,
      'size': size,
    }
  })
}

// 查询商品运费配置
export function queryGoodsFreightConfig({id,integralStandard,payAmountStandard,freight,storehouseId}){
  return http.request({
    url: '/app/query/goods/freight/config',
    data: {
      'brandId': global.brandId,
      'id': id,
      'integralStandard': integralStandard, // 积分标准
      'payAmountStandard': payAmountStandard, // 支付金额标准
      'freight': freight, // 运费
      'storehouseId': storehouseId, // 仓库ID
      'page': 0,
      'size': 10,
    }
  })
}

// 查询商品送达时间
export function queryGoodsDeliveryTime({province,city,area}){
  return http.request({
    url: '/app/query/goods/delivery/time',
    data: {
      'province': province,
      'city': city,
      'area': area,
    }
  })
}

// 查询商品评价信息
export function queryGoodsEvaluationInfo({orderCode,storehouseId,areaId,cateId,goodsId,goodsDetailsId,grade,isPicture,isExtra,isOnlyQuerySelf,isNeedUserId = '1',startTime,endTime,page,size = 10,id}){
  return http.request({
    url: '/app/query/goods/evaluation/info',
    data: {
      'id': id,
      'brandId': global.brandId,
      'orderCode': orderCode, // 订单号
      'storehouseId': storehouseId, // 仓库ID
      'areaId': areaId, // 分区ID
      'cateId': cateId, // 分类ID
      'goodsId': goodsId, // 商品ID
      'goodsDetailsId': goodsDetailsId, // 商品详情ID
      'grade': grade, // 评价等级，0：好评，1：中评，2：差评
      'isPicture': isPicture, // 是否有图片，0：否，1：是
      'isExtra': isExtra, // 是否已追评，0：否，1：是，
      'isOnlyQuerySelf': isOnlyQuerySelf, // 是否只查询自己
      'isNeedUserId': isNeedUserId, // 是否需要用户token，0：否，1：是
      'startTime': startTime, // 开始时间
      'endTime': endTime, // 结束时间
      'page': page,
      'size': size,
    }
  })
}

// 修改商品评价点赞
export function updateGoodsEvaluationSupport({evaluationId,isSupport,isDelete,id}){
  return http.request({
    url: '/app/update/goods/evaluation/support',
    data: {
      'evaluationId': evaluationId, // 评价ID
      'isSupport': isSupport, // 是否点赞，0：否，1：是
      'isDelete': isDelete, // 是否删除，0：否，1：是
      'id': id,
    }
  })
}
// 新增、修改、删除商品评价评论回复
export function updateGoodsEvaluationCommentReply({evaluationId,content,commentId,id,isDelete}){
  return http.request({
    url: '/app/update/goods/evaluation/comment/reply',
    data: {
      'evaluationId': evaluationId, // 评价ID
      'content': content, // 评论内容
      'commentId': commentId, // 回复评论ID （如果不为空表示回复某条评论,为空表示评论）
      'id': id,
      'isDelete': isDelete, // 是否删除，0：否，1：是
    }
  })
}

// 新增、修改、删除商品评价
export function updateGoodsEvaluationInfo({orderCode,goodsListsId,grade,content,descriptionConsistent,logisticsServices,serviceAttitude,imageUrl,isDeleteAllImage,id,isDelete,isAnonym}){
  return http.request({
    url: '/app/update/goods/evaluation/info',
    data: {
      'orderCode': orderCode, // 订单号
      'goodsListsId': goodsListsId, // 商品详情ID
      'grade': grade, // 评价等级，0：好评，1：中评，2：差评
      'content': content, // 评价内容
      'descriptionConsistent': descriptionConsistent, // 描述相符（1-5颗星）
      'logisticsServices': logisticsServices, // 物流服务（1-5颗星）
      'serviceAttitude': serviceAttitude, // 服务态度（1-5颗星）
      'imageUrl': imageUrl, // 图片url
      'isDeleteAllImage': isDeleteAllImage, // 是否删除全部图片，0：否，1：是
      'id': id,
      'isDelete': isDelete, // 是否删除，0：否，1：是
      'isAnonym': isAnonym, // 是否匿名，0：否，1： 是
    }
  })
}

// 新增、修改、删除商品追加评论
export function updateGoodsEvaluationExtra({evaluationId,content,imageUrl,isDeleteAllImage,id,isDelete}){
  return http.request({
    url: '/app/update/goods/evaluation/extra',
    data: {
      'evaluationId': evaluationId, // 评论ID
      'content': content, // 追评内容
      'imageUrl': imageUrl, // 图片url,
      'isDeleteAllImage': isDeleteAllImage, // 是否删除全部图片，0：否，1：是，
      'id': id,
      'isDelete': isDelete, // 是否删除，0：否，1：是
    }
  })
}

// 查询商品公共配置
export function queryGoodsCommonConfig({name,type,page = 0, size = 10,id}){
  return http.request({
    url: '/app/query/goods/common/config',
    data: {
      'brandId': global.brandId, 
      'name': name, // 名称
      'type': type, // 类型，0:仓库,1:分区,2:颜色,3:等级,4:规格,5:描述,6:备注,
      'page': page,
      'size': size,
      'id': id,
    }
  })
}

// 查询商品上架列表
export function queryGoodsListTab({storehouseId,areaId,goodsId,goodsName,cateId,colorId,grade,spec,sellingPriceSort,salesVolumeSort,isNeedUserId = '1',isCollect,page = 0,size = 10}){
  return http.request({
    url: '/app/query/goods/lists/tabulation',
    data: {
      'storehouseId': storehouseId, // 仓库ID
      'areaId': areaId, // 分区ID
      'goodsId': goodsId, // 商品ID
      'goodsName': goodsName, // 商品名称
      'cateId': cateId, // 分类ID
      'colorId': colorId, // 颜色ID
      'grade': grade, // 等级
      'specId': spec, // 规格
      'sellingPriceSort': sellingPriceSort, // 售价排序（ASC:正序，DESC：倒序）
      'salesVolumeSort': salesVolumeSort, // 销量排序（ASC:正序，DESC：倒序）
      'isNeedUserId': isNeedUserId, // 是否需要用户ID（0：否，1：是）
      'isCollect': isCollect, // 是否查询收藏（0：否，1：是）
      'sort': 'sort',
      'page': page,
      'size': size,
    }
  })
}

// 查询商品上架信息
export function queryGoodsLists({storehouseId,areaId,goodsId,goodsName,cateId,colorId,grade,spec,isNeedUserId = '1',isCollect,page,size,sellingPriceSort = 'ASC',id = '',remarks,description,merchantId}){
  return http.request({
    url: '/app/query/goods/lists',
    data: {
      'storehouseId': storehouseId, // 仓库ID
      'areaId': areaId, // 分区ID
      'goodsId': goodsId, // 商品ID
      'goodsName': goodsName, // 商品名称
      'cateId': cateId, // 分类ID
      'colorId': colorId, // 颜色ID
      'grade': grade, // 等级
      'specId': spec, // 规格
      'isNeedUserId': isNeedUserId, // 是否需要用户ID
      'isCollect': isCollect, // 是否收藏
      'sellingPriceSort': sellingPriceSort,
      'page': page,
      'size': size,
      'id': id,
      'remarks': remarks,
      'description': description,
      'merchantId': merchantId, // 商家ID
    }
  })
}

// 获取搜索历史
export function queryGoodsSearchHistory(){
  return http.request({
    url: '/app/query/goods/search/history',
    data: {
      'type': ''
    }
  })
}